package com.tbit.uqbike.service.business;

import com.alibaba.fastjson.JSONObject;
import com.tbit.uqbike.object.pojo.WeixinDepositLog;
import com.tbit.uqbike.object.value.FinaStat;
import com.tbit.uqbike.object.value.LoginInfo;

import java.util.HashMap;
import java.util.List;

/**
 * @Author: chen
 * @Description: 财务报表统计
 * @Date: 创建于 10:26 2020/6/30
 */
public interface FinaStatService {

    /***
     * 财务总览
     * @param accountIds 品牌id
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return
     */
    List<FinaStat> groupByAccountId(String accountIds, Long startTime, Long endTime, LoginInfo info);


    /**
     * 分页查询
     *
     * @param
     * @return
     */
    List<WeixinDepositLog> queryPage(Integer accountId, Long startTime, Long endTime, Integer pageNO, Integer rowCount);

    /**
     * 总数
     *
     * @param
     * @return
     */
    Integer queryCount(Integer accountId, Long startTime, Long endTime);

    /**
     * 导出数据
     *
     * @param
     * @return
     */
    List<WeixinDepositLog> export(Integer accountId, Long startTime, Long endTime);

    /**
     * 查询时间段内押金总数及总金额，退还押金总数及总金额
     *
     * @param
     * @return
     */
    JSONObject getSum(Integer accountId, Long startTime, Long endTime);


    List<WeixinDepositLog> getDepositByArea(HashMap<String, Object> params, Integer accountId, Long startTime, Long endTime, Integer rowCount, Integer pageNO, Boolean isPage);

    int getDepositCountByArea(HashMap<Object, Object> params, Integer accountId, Long startTime, Long endTime);

}
